class CoolRocketNew extends EX41GrenadeProjectile;

simulated function PostBeginPlay()
{
    Super.PostBeginPlay();
	
	if (Level.Game != none)
	{
        if( Level.Game.GameDifficulty < 1.0 )
        {
            Damage = default.Damage * 1.00;
        }
        else if( Level.Game.GameDifficulty < 2.0 )
        {
            Damage = default.Damage * 1.15;
        }
        else if( Level.Game.GameDifficulty < 4.0 )
        {
            Damage = default.Damage * 1.30;
        }
        else if( Level.Game.GameDifficulty < 7.0 )
        {
            Damage = default.Damage * 1.45;
        }
		else
        {
            Damage = default.Damage * 1.60;
        }
	}
}

simulated function ProcessTouch(Actor Other, Vector HitLocation)
{
    if ( Other == none || Other == Instigator )
		return;

    if( Instigator != none )
    {
        OrigLoc = Instigator.Location;
    }

    if( !bDud && ((VSizeSquared(Location - OrigLoc) < ArmDistSquared) || OrigLoc == vect(0,0,0)) )
    {
        if( Role == ROLE_Authority )
        {
            AmbientSound=none;
            PlaySound(Sound'ProjectileSounds.PTRD_deflect04',,2.0);
            Other.TakeDamage( ImpactDamage, Instigator, HitLocation, Normal(Velocity), ImpactDamageType );
        }
        bDud = true;
        Velocity = vect(0,0,0);
        LifeSpan=1.0;
        SetPhysics(PHYS_Falling);
    }

    if( !bDud )
    {
	   Explode(HitLocation,Normal(HitLocation-Other.Location));
	}
}

defaultproperties
{
     ImpactDamageType=Class'DamTypeCoolRocket'
     ImpactDamage=30
     StraightFlightTime=10.0
     Damage=30.000000
     DamageRadius=500.0
     MyDamageType=Class'DamTypeCoolRocket'
     ExplosionDecal=Class'KFMod.KFScorchMark'
}
